The amount of data that can be communicated through a synchronous digital channel between two devices is limited by four fundamental factors:
1. The timing uncertainty characteristic of the channel.
2. The maximum rate at which the transmitting or receiving registers can toggle.
3. The speed at which the voltage or current that signals a logic state can switch between logic states.
4. The Process Gain: this is the log2 of the number of logic states that the channel can support, that is the number of bits per symbol. For example, a system with four logic states would have a Process Gain of two, as this represents two bits.
Considering each of these limits, it is apparent that:
1. The timing uncertainty is the combination or sum of the variation in the actual clock to output delay of the transmitter and the variation in the actual setup and hold time of the receiver plus the skew of the signals at the receiver in the case of a parallel channel having multiple wires or optical fibres.
2. The maximum rate at which the registers can toggle is determined by the technology in which the registers are implemented and the design and layout of the registers.
3. The speed at which the signal moves between logic states is a linear function of the slew rate of the signal and the noise margin, that is, the voltage or current step between states. In some instances, electronic systems can operate with voltage swings between states of as little as 80 mV, and even lower. The slew rate is a function both of the technology and of the power budget. Technologies such as GaAs and InPh (Indium Phosphide) exhibit very high electron mobilities, which allow large amounts of power to be applied in achieving a high slew rate, but the preferred approach is to maintain existing CMOS slew rates of around 2 V/ns while reducing the voltage swing between states, as this reduces the power needed to signal by the square of the reduction in voltage, assuming the system operates at its theoretical maximum frequency.
4. Process Gain: there is a strong relationship between limit 3 (time taken to move between states) and the potential for Process Gain: reducing the voltage swing between states so the system can move between states faster is using the SNR in the system to send more symbols in a given time, whereas the Process Gain uses the same SNR to pack in more states per transition, hence send more bits per symbol.
Concerning Channel Capacity, in The Bell System Technical Journal, V27, pp 379-423 and 623-656, October 1948, Claude Shannon establishes a fundamental limit for the amount of information that can be sent through a continuous channel affected by white noise with a Gaussian amplitude distribution. In that paper, the channel capacity is proven to be:C=W log 2(1+S/N)where C=Channel capacity in bits per second, W=Bandwidth in Hertz, S=Signal Power, and N=Noise Power
This capacity assumes infinite time to send the whole communication, that is infinite latency for the data. Modern modems get close to these theoretical limits, but the methods involved are completely impractical for a high speed system operating at the speed of digital systems such as processors, which are clocked at multi-GigaHertz speeds.
There have been numerous attempts at increasing the speed of a communication channel. A common approach is to package multiple serial interfaces together, but such systems have a high latency inherent to serial communication and suffer from significant losses from framing the data to determine the time sequence of the data words or packets.
Other attempts at producing high speed channels have focussed on controlling the production process to the maximum possible performance out of a particular process. For example, RAMBUS have specified an impedance for all components within a channel of 28 Ohms±5%. Such tight control is extremely difficult to maintain in a high speed system and attempts to do so are very expensive.
It is the object of the current invention to measure time relationships within a channel as a function of the data that is transmitted or the composition and environment of the channel, then to apply this information to establish a communication channel operating at high speed with very low timing uncertainty.
It is a further object of the current invention that the channel relaxes the production tolerances needed for its implementation by virtue of the system adapting to the environment in which it operates.
Another object of the present invention is to make the distribution of timing uncertainties narrower.